package com.gitee.wsl.mathematics.geometry.api

import com.gitee.wsl.mathematics.coordinate.Coordinate
import com.gitee.wsl.mathematics.geometry.api.segment.SegmentAble
import com.gitee.wsl.mathematics.interpolator.Ratio

interface LineSegmentShape<N:Number,V: Coordinate<N, V>,S:LineShape<N,V>>: SegmentAble<N, V, S>,LineShape<N,V> {

    val startRatio: Ratio

    val endRatio: Ratio

    override val a: V
        get() = super.a * startRatio.value
    override val b: V
        get() = super.b
}